/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Order;

import DTO.Item;
import DTO.Order;
import java.util.List;

/**
 * this interface defines the operations for order management.
 * order management services can implement this interface.
 * @author tejinder
 * @see Order
 */
public interface IOrderManager {

    /**
     * this method retrieves order history for a customer
     * @param csid an integer
     * @return an order data transfer object
     */
    List<Order> getOrderHistory(Integer csid);

    /**
     * this method inserts  an order into database
     * @param order data transfer object
     * @return an integer order id 
     */
    Integer makeDesktopOrder(Order order);

    /**
     * this method retrieves item history for an order id
     * @param oid an integer
     * @return an item data transfer object 
     */
    List<Item> getItemHistory(Integer oid);
}
